package com.jn.erp.web.api.sys.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jn.erp.security.entity.AutoFillEntity;
import com.jn.erp.security.sysservice.bo.TreeListBO;
import com.jn.erp.security.sysservice.enums.OrgLevelEnum;
import com.jn.erp.security.sysservice.enums.OrgTypeEnum;
import lombok.Data;

import java.util.List;

/**
 * <pre>
 *
 * </pre>
 *
 * @author sunjiyong
 * @since 2024/8/28 15:29
 */
@TableName("t_sys_org")
public class SysOrg extends AutoFillEntity implements TreeListBO<SysOrg> {
    @TableId(
            type = IdType.AUTO
    )
    private Long id;
    private Long pid;
    private String name;
    private String shortname;
    private String idPath;
    private String namePath;
    private OrgLevelEnum level;
    private OrgTypeEnum type;
    private String contactName;
    private String phone;
    private String fax;
    private String email;
    private String license;
    //0正常 false   1停用 true
    private Boolean state;
    private String info;
    private Integer province;
    private Integer city;
    private Integer district;
    private String address;
    private Integer sortNum;
    @TableField(
            exist = false
    )
    private List<SysOrg> childList;

    public SysOrg() {
    }

    public Long getId() {
        return this.id;
    }

    public Long getPid() {
        return this.pid;
    }

    public String getName() {
        return this.name;
    }

    public String getShortname() {
        return this.shortname;
    }

    public String getIdPath() {
        return this.idPath;
    }

    public String getNamePath() {
        return this.namePath;
    }

    public OrgLevelEnum getLevel() {
        return this.level;
    }

    public OrgTypeEnum getType() {
        return this.type;
    }

    public String getContactName() {
        return this.contactName;
    }

    public String getPhone() {
        return this.phone;
    }

    public String getFax() {
        return this.fax;
    }

    public String getEmail() {
        return this.email;
    }

    public String getLicense() {
        return this.license;
    }

    public Boolean getState() {
        return this.state;
    }

    public String getInfo() {
        return this.info;
    }

    public Integer getProvince() {
        return this.province;
    }

    public Integer getCity() {
        return this.city;
    }

    public Integer getDistrict() {
        return this.district;
    }

    public String getAddress() {
        return this.address;
    }

    public Integer getSortNum() {
        return this.sortNum;
    }

    public List<SysOrg> getChildList() {
        return this.childList;
    }

    public void setId(final Long id) {
        this.id = id;
    }

    public void setPid(final Long pid) {
        this.pid = pid;
    }

    public void setName(final String name) {
        this.name = name;
    }

    public void setShortname(final String shortname) {
        this.shortname = shortname;
    }

    public void setIdPath(final String idPath) {
        this.idPath = idPath;
    }

    public void setNamePath(final String namePath) {
        this.namePath = namePath;
    }

    public void setLevel(final OrgLevelEnum level) {
        this.level = level;
    }

    public void setType(final OrgTypeEnum type) {
        this.type = type;
    }

    public void setContactName(final String contactName) {
        this.contactName = contactName;
    }

    public void setPhone(final String phone) {
        this.phone = phone;
    }

    public void setFax(final String fax) {
        this.fax = fax;
    }

    public void setEmail(final String email) {
        this.email = email;
    }

    public void setLicense(final String license) {
        this.license = license;
    }

    public void setState(final Boolean state) {
        this.state = state;
    }

    public void setInfo(final String info) {
        this.info = info;
    }

    public void setProvince(final Integer province) {
        this.province = province;
    }

    public void setCity(final Integer city) {
        this.city = city;
    }

    public void setDistrict(final Integer district) {
        this.district = district;
    }

    public void setAddress(final String address) {
        this.address = address;
    }

    public void setSortNum(final Integer sortNum) {
        this.sortNum = sortNum;
    }

    public void setChildList(final List<SysOrg> childList) {
        this.childList = childList;
    }


}
